#define _CRT_SECURE_NO_WARNINGS 1
//#include <iostream>
//using namespace std;
//int main()
//{
//	int n, m;
//	cin >> n >> m;
//	int sum = 0;
//	for (int i = n; i <= m; i++)
//	{
//		if (i % 17 == 0)
//		{
//			sum += i;
//		}
//	}
//	cout << sum;
//	return 0;
//}
//#include <iostream>
//using namespace std;
//int a[110];
//int main()
//{
//	int n;
//	cin >> n;
//	for (int i = 0; i < n; i++)
//	{
//		cin >> a[i];
//	}
//	int l = 0;
//	int r = n - 1;
//	while (l < r)
//	{
//		swap(a[l], a[r]);
//		l++;
//		r--;
//	}
//	for (int i = 0; i < n-1; i++)
//	{
//		cout << a[i] << ' ';
//	}
//	cout << a[n-1];
//	return 0;
//}

#include <iostream>
using namespace std;
int check(int n)
{
	int a[10] = { 0 };
	int n1 = n;
	for (int i = 0; i <3; i++)
	{
		a[n1 % 10]++;
		if (a[n1 % 10] > 1 || a[0]==1)
		{
			return 0;
		}
		n1 /= 10;
	}
	n1 = n * 2;
	for (int i = 0; i < 3; i++)
	{
		a[n1 % 10]++;
		if (a[n1 % 10] > 1 || a[0] == 1)
		{
			return 0;
		}
		n1 /= 10;
	}
	n1 = n * 3;
	for (int i = 0; i < 3; i++)
	{
		a[n1 % 10]++;
		if (a[n1 % 10] > 1 || a[0] == 1)
		{
			return 0;
		}
		n1 /= 10;
	}
	return 1;
}
int main()
{
	for (int i = 123; i <= 345; i++)
	{
		if (check(i))
		{
			
			printf("%d %d %d\n", i, i * 2, i * 3);
			
		}
	}
	return 0;
}

//#include <iostream>
//using namespace std;
//bool a[5010];
//int main()
//{
//	int n, m;
//	cin >> n >> m;
//	int li = 0;
//	for (int i = 1; i <= n; i++)
//	{
//		for (int j = 2; j <= m; j++)
//		{
//			if (j == 2 && i % j == 0)
//			{
//				a[i] = true;
//				
//			}
//			else if (i % j == 0 )
//			{
//				a[i] = !a[i];
//				
//			}
//		}
//		if (!a[i])
//		{
//			li = i;
//		}
//	}
//	for (int i = 1; i <li; i++)
//	{
//		if (!a[i])
//		{
//			printf("%d,",i);
//		}
//	}
//	cout << li;
//	return 0;
//}

//#include <iostream>
//using namespace std;
//int main()
//{
//	int a, b, c;
//	cin >> a >> b >> c;
//	if (a < b)
//	{
//		swap(a, b);
//	}
//	if (a < c)
//	{
//		swap(a, c);
//	}
//	if (b < c)
//	{
//		swap(b, c);
//	}
//	printf("%d %d %d", a, b, c);
//	return 0;
//}

//#include <iostream>
//using namespace std;
//int main()
//{
//	int n = 0;
//	cin >> n;
//	int t = 0;
//	int sum = 0;
//	for (int i = 0; i < n; i++)
//	{
//		cin >> t;
//		sum += t;
//	}
//	printf("%d %.5f%", sum, sum / 1.0 / n);
//	return 0;
//}
//
//#include <iostream>
//using namespace std;
//int main()
//{
//	int n = 0;
//	cin >> n;
//	while (n != 1)
//	{
//		if (n % 2 == 0)
//		{
//			printf("%d/2=%d\n", n, n / 2);
//			n /= 2;
//		}
//		else if (n % 2 == 1)
//		{
//			printf("%d*3+1=%d\n", n, n * 3 + 1);
//			n =n*3+1;
//
//		}
//	}
//	cout << "End";
//	return 0;
//}

//#include <iostream>
//using namespace std;
//int a[110][110];
//
//int main()
//{
//	int n, m;
//	cin >> n >> m;
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j < m; j++)
//		{
//			cin >> a[i][j];
//		}
//	}
//	int t = 0;
//	int sum = 0;
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j < m; j++)
//		{
//			cin >> t;
//			if (t == a[i][j])
//			{
//				sum++;
//			}
//		}
//	}
//	printf("%.2f", sum *100.0 / (n * m));
//	return 0;
//}

//#include <iostream>
//using namespace std;
//int a[110][110];
//int b[110][110];
//int c[110][110];
//
//
//int main()
//{
//	int n, m,k;
//	cin >> n >> m >> k;
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j < m; j++)
//		{
//			cin >> a[i][j];
//		}
//	}
//	for (int i = 0; i < m; i++)
//	{
//		for (int j = 0; j < k; j++)
//		{
//			cin >> b[i][j];
//		}
//	}
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j < k; j++)
//		{
//			for (int x = 0; x < m; x++)
//			{
//				c[i][j] += a[i][x] * b[x][j];
//			}
//		}
//	}
//	for (int i = 0; i < n; i++)
//	{
//		for (int j = 0; j <k; j++)
//		{
//			printf("%d ", c[i][j]);
//		}
//		printf("\n");
//	}
//	return 0;
//}

//#include <iostream>
//#include <string>
//#include <vector>
//using namespace std;
//vector<int> a[26];
//int b[26];
//int main()
//{
//	int n;
//	cin >> n;
//	int num=0;
//	string s;
//	for (int i=0; i < n; i++)
//	{
//		cin >> num >> s;
//		for (int j = 0; j < s.size(); j++)
//		{
//			b[int(s[j] - 'A')]++;
//			a[int(s[j] - 'A')].push_back(num);
//		}
//	}
//	int max = 0;
//	int mi = 0;
//	for (int i = 0; i < 26; i++)
//	{
//		if (b[i] > max)
//		{
//			max = b[i];
//			mi = i;
//		}
//	}
//	cout << char(mi + 'A') << endl;
//	cout << b[mi] << endl;
//	for (int i = 0; i < a[mi].size(); i++)
//	{
//		cout << a[mi][i] << endl;
//	}
//	return 0;
//}